package memento;

import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import vista.objetos.GraficableConEtiqueta;

public class EstadoInicial {
	
	private HashMap<GraficableConEtiqueta, IMemento> hash;
	
	public EstadoInicial() {}

	public void setEstadoInicial(List<GraficableConEtiqueta> objetos) 
	{
		this.hash = new HashMap<GraficableConEtiqueta, IMemento>();

		Iterator<GraficableConEtiqueta> itObejto = objetos.iterator();
		
		while(itObejto.hasNext())
		{
			GraficableConEtiqueta graficable = itObejto.next(); 
			IMemento mento = graficable.getMementoGenerico();
			
			hash.put(graficable, mento);
		}
	}
	
	public void volverAEstadoInicial()
	{
		Iterator<Map.Entry<GraficableConEtiqueta,IMemento>> itSet = hash.entrySet().iterator();
		
		while (itSet.hasNext()) 
		{
			Map.Entry<GraficableConEtiqueta,IMemento> par = itSet.next();
			
			par.getKey().saveMemento(par.getValue());
		}
	}
		

}
